import ast
from pathlib import Path

from 程序核心代码.mvvm重构.基础定义.基础图形项.节点图形项.带容器带组件带布局的节点图形项 import 带容器带组件带布局的节点图形项
from 程序核心代码.mvvm重构.基础定义.基础模型.容器类节点基础模型 import 容器类Ast模型基础模型

from 程序核心代码.mvvm重构.基础定义.节点管理器.自动节点注册表 import 注册节点模型, 注册节点图形项


@注册节点模型(ast.Module)
class 文件容器ast节点基础模型(容器类Ast模型基础模型):
    """
    作为容器节点，负责管理包含的节点。
    """
    def __init__(self,ast节点, 所属节点模型管理器, 上级节点=None,节点位置=None):

        super().__init__(ast节点, 所属节点模型管理器, "文件节点",节点位置=节点位置 ,上级节点=上级节点)
        self.节点标题名称 = self.获取属性值("节点名称") #+ ":" + str(起始接口.所属节点模型管理器.文件名)
        self.参数名 ="文件名："
        self.参数值 = Path(self.所属节点模型管理器.文件名).stem
        self.节点介绍="文件节点，负责管理包含的节点。"


@注册节点图形项(ast.Module)
class 文件容器图形节点(带容器带组件带布局的节点图形项):
    def __init__(self, 节点模型, 父容器节点图形项管理器=None, 父项=None):
        super().__init__(节点模型, 父容器节点图形项管理器=父容器节点图形项管理器, 父项=父项)
